home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / answrbok / 6_17.lha / 6_17 / 6_17a.h next >
Text File  |  1993-08-08  |  2KB  |  101 lines

  1. * Copyright (c) 1990 by AT&T Bell Telephone Laboratories, Incorporated. */
  2. * The C++ Answer Book */
  3. * Tony Hansen */
  4. * All rights reserved. */
  5. *
  6. vector of floats
  7. Exercise 6.17
  8. /
  9. ifndef VECTOR_H
  10. define VECTOR_H
  11.  
  12. include <stream.h>
  13.  
  14. include "6_17a0.h"    // EXPAND
  15.    // vector x(15); or vector x(15, 4.5);
  16.    vector(int size, float init = 0.0);
  17.  
  18.    // delete x;
  19.    ~vector();
  20.  
  21.    // vector x = vector ...
  22.    vector(vector &x);
  23.  
  24.    // x = y
  25.    vector& operator=(vector &vec);
  26.  
  27.    // x = 5.0
  28.    vector& operator=(float x);
  29.  
  30.    // x = v1 + v2
  31.    friend vector& operator+(vector &v1, vector &v2);
  32.  
  33.    // x = v1 - v2
  34.    friend vector& operator-(vector &v1, vector &v2);
  35.  
  36.    // x = v1 * v2
  37.    friend vector& operator*(vector &v1, vector &v2);
  38.  
  39.    // x = v1 / v2
  40.    friend vector& operator/(vector &v1, vector &v2);
  41.  
  42.    // x = v1 + x
  43.    friend vector& operator+(vector &v1, float x);
  44.  
  45.    // x = v1 - x
  46.    friend vector& operator-(vector &v1, float x);
  47.  
  48.    // x = v1 * x
  49.    friend vector& operator*(vector &v1, float x);
  50.  
  51.    // x = v1 / x
  52.    friend vector& operator/(vector &v1, float x);
  53.  
  54.    // x = +y
  55.    friend vector& operator+(vector &v1);
  56.  
  57.    // x = -y
  58.    friend vector& operator-(vector &v1);
  59.  
  60.    // x += y
  61.    vector& operator+=(vector &v1);
  62.  
  63.    // x -= y
  64.    vector& operator-=(vector &v1);
  65.  
  66.    // x *= y
  67.    vector& operator*=(vector &v1);
  68.  
  69.    // x /= y
  70.    vector& operator/=(vector &v1);
  71.  
  72.    // x += y
  73.    vector& operator+=(float y);
  74.  
  75.    // x -= y
  76.    vector& operator-=(float y);
  77.  
  78.    // x *= y
  79.    vector& operator*=(float y);
  80.  
  81.    // x /= y
  82.    vector& operator/=(float y);
  83.  
  84.    // f = v[i]
  85.    float& operator[](int i);
  86.  
  87.    // x = (v1 == v2)
  88.    friend int operator==(vector &v1, vector &v2);
  89.  
  90.    // x = (v1 != v2)
  91.    friend int operator!=(vector &v1, vector &v2);
  92.  
  93.    // cout << v1
  94.    friend ostream& operator<<(ostream&, vector&);
  95.  
  96.    // x = v1.dot(v2)
  97.    float dot(vector& v2);
  98. riend class matrix;    // DELETE
  99. ;
  100. endif /* VECTOR_H */
  101.